#include <linux/kernel.h>
#include <soc/k3/ddr.h>

#include "ddr.h"

#define DDRSS_PLL_FHS_CNT 3
#define DDRSS_PLL_FREQUENCY_1 400000000
#define DDRSS_PLL_FREQUENCY_2 400000000
#define DDRSS_SDRAM_IDX 13
#define DDRSS_REGION_IDX 16

static uint32_t DDRSS_ctlReg[] = {
	0x00000A00,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x000890B8,
	0x00000000,
	0x00000000,
	0x00000000,
	0x000890B8,
	0x00000000,
	0x00000000,
	0x00000000,
	0x000890B8,
	0x00000000,
	0x00000000,
	0x00000000,
	0x01010100,
	0x01000100,
	0x01000110,
	0x02010002,
	0x00027100,
	0x00061A80,
	0x02550255,
	0x00000255,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x0400091C,
	0x1C1C1C1C,
	0x0400091C,
	0x1C1C1C1C,
	0x0400091C,
	0x1C1C1C1C,
	0x05050404,
	0x00002706,
	0x0602001D,
	0x05001D0B,
	0x00270605,
	0x0602001D,
	0x05001D0B,
	0x00270605,
	0x0602001D,
	0x07001D0B,
	0x00180807,
	0x0400DB60,
	0x07070009,
	0x00001808,
	0x0400DB60,
	0x07070009,
	0x00001808,
	0x0400DB60,
	0x03000009,
	0x0D0C0002,
	0x0D0C0D0C,
	0x01010000,
	0x03191919,
	0x0B0B0B0B,
	0x00000B0B,
	0x00000101,
	0x00000000,
	0x01000000,
	0x01180803,
	0x00001860,
	0x00000118,
	0x00001860,
	0x00000118,
	0x00001860,
	0x00000005,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00090009,
	0x00000009,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00010001,
	0x00025501,
	0x02550120,
	0x02550120,
	0x01200120,
	0x01200120,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x03010000,
	0x00010000,
	0x00000000,
	0x01000000,
	0x80104002,
	0x00040003,
	0x00040005,
	0x00030000,
	0x00050004,
	0x00000004,
	0x00040003,
	0x00040005,
	0x00000000,
	0x00061800,
	0x00061800,
	0x00061800,
	0x00061800,
	0x00061800,
	0x00000000,
	0x0000AAA0,
	0x00061800,
	0x00061800,
	0x00061800,
	0x00061800,
	0x00061800,
	0x00000000,
	0x0000AAA0,
	0x00061800,
	0x00061800,
	0x00061800,
	0x00061800,
	0x00061800,
	0x00000000,
	0x0000AAA0,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x080C0000,
	0x080C080C,
	0x08000000,
	0x00000808,
	0x000E0000,
	0x00080808,
	0x0E000000,
	0x08080800,
	0x00000000,
	0x0000080E,
	0x00040003,
	0x00000007,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x01000000,
	0x00000000,
	0x00001500,
	0x0000100E,
	0x00000000,
	0x00000000,
	0x00000001,
	0x00000002,
	0x00000C00,
	0x00001000,
	0x00000C00,
	0x00001000,
	0x00000C00,
	0x00001000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00042400,
	0x00000301,
	0x00000000,
	0x00000424,
	0x00000301,
	0x00000000,
	0x00000424,
	0x00000301,
	0x00000000,
	0x00000424,
	0x00000301,
	0x00000000,
	0x00000424,
	0x00000301,
	0x00000000,
	0x00000424,
	0x00000301,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00001401,
	0x00001401,
	0x00001401,
	0x00001401,
	0x00001401,
	0x00001401,
	0x00000493,
	0x00000493,
	0x00000493,
	0x00000493,
	0x00000493,
	0x00000493,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00010000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000101,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x0C181511,
	0x00000304,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00040000,
	0x00800200,
	0x00000000,
	0x02000400,
	0x00000080,
	0x00040000,
	0x00800200,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000100,
	0x01010000,
	0x00000000,
	0x3FFF0000,
	0x000FFF00,
	0xFFFFFFFF,
	0x00FFFF00,
	0x0A000000,
	0x0001FFFF,
	0x01010101,
	0x01010101,
	0x00000118,
	0x00000C01,
	0x00000000,
	0x00000000,
	0x00000000,
	0x01000000,
	0x00000100,
	0x00010000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x0C000000,
	0x060C0606,
	0x06060C06,
	0x00010101,
	0x02000000,
	0x05020101,
	0x00000505,
	0x02020200,
	0x02020202,
	0x02020202,
	0x02020202,
	0x00000000,
	0x00000000,
	0x04000100,
	0x1E000004,
	0x000030C0,
	0x00000200,
	0x00000200,
	0x00000200,
	0x00000200,
	0x0000DB60,
	0x0001E780,
	0x0C0D0302,
	0x001E090A,
	0x000030C0,
	0x00000200,
	0x00000200,
	0x00000200,
	0x00000200,
	0x0000DB60,
	0x0001E780,
	0x0C0D0302,
	0x001E090A,
	0x000030C0,
	0x00000200,
	0x00000200,
	0x00000200,
	0x00000200,
	0x0000DB60,
	0x0001E780,
	0x0C0D0302,
	0x0000090A,
	0x00000000,
	0x0302000A,
	0x01000500,
	0x01010001,
	0x00010001,
	0x01010001,
	0x02010000,
	0x00000200,
	0x02000201,
	0x00000000,
	0x00202020,
};

static uint32_t DDRSS_phyIndepReg[] = {
	0x00000A00,
	0x00000000,
	0x00000000,
	0x01000000,
	0x00000001,
	0x00010064,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00010001,
	0x00000000,
	0x00010001,
	0x00000005,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x280D0001,
	0x00000000,
	0x00010000,
	0x00003200,
	0x00000000,
	0x00000000,
	0x00060602,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000001,
	0x00000055,
	0x000000AA,
	0x000000AD,
	0x00000052,
	0x0000006A,
	0x00000095,
	0x00000095,
	0x000000AD,
	0x00000000,
	0x00000000,
	0x00010100,
	0x00000014,
	0x000007D0,
	0x00000300,
	0x00000000,
	0x00000000,
	0x01000000,
	0x00010101,
	0x01000000,
	0x00000000,
	0x00010000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00001400,
	0x00000000,
	0x01000000,
	0x00000404,
	0x00000001,
	0x0001010E,
	0x02040100,
	0x00010000,
	0x00000034,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000005,
	0x01000000,
	0x04000100,
	0x00020000,
	0x00010002,
	0x00000001,
	0x00020001,
	0x00020002,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000300,
	0x0A090B0C,
	0x04060708,
	0x01000005,
	0x00000800,
	0x00000000,
	0x00010008,
	0x00000000,
	0x0000AA00,
	0x00000000,
	0x00010000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000008,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00010100,
	0x00000000,
	0x00000000,
	0x00027100,
	0x00061A80,
	0x00000100,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x01000000,
	0x00010003,
	0x02000101,
	0x01030001,
	0x00010400,
	0x06000105,
	0x01070001,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00010000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00010000,
	0x00000004,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00007800,
	0x00780078,
	0x00141414,
	0x0000003A,
	0x0000003A,
	0x0004003A,
	0x04000400,
	0xC8040009,
	0x0400091C,
	0x00091CC8,
	0x001CC804,
	0x00000118,
	0x00001860,
	0x00000118,
	0x00001860,
	0x00000118,
	0x04001860,
	0x01010404,
	0x00001901,
	0x00190019,
	0x010C010C,
	0x0000010C,
	0x00000000,
	0x05000000,
	0x01010505,
	0x01010101,
	0x00181818,
	0x00000000,
	0x00000000,
	0x0D000000,
	0x0A0A0D0D,
	0x0303030A,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x0D090000,
	0x0D09000D,
	0x0D09000D,
	0x0000000D,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x16000000,
	0x001600C8,
	0x001600C8,
	0x010100C8,
	0x00001B01,
	0x1F0F0053,
	0x05000001,
	0x001B0A0D,
	0x1F0F0053,
	0x05000001,
	0x001B0A0D,
	0x1F0F0053,
	0x05000001,
	0x00010A0D,
	0x0C0B0700,
	0x000D0605,
	0x0000C570,
	0x0000001D,
	0x180A0800,
	0x0B071C1C,
	0x0D06050C,
	0x0000C570,
	0x0000001D,
	0x180A0800,
	0x0B071C1C,
	0x0D06050C,
	0x0000C570,
	0x0000001D,
	0x180A0800,
	0x00001C1C,
	0x000030C0,
	0x0001E780,
	0x000030C0,
	0x0001E780,
	0x000030C0,
	0x0001E780,
	0x02550255,
	0x03030255,
	0x00025503,
	0x02550255,
	0x0C080C08,
	0x00000C08,
	0x000890B8,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000120,
	0x000890B8,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000120,
	0x000890B8,
	0x00000000,
	0x00000000,
	0x00000000,
	0x02000120,
	0x00000080,
	0x00020000,
	0x00000080,
	0x00020000,
	0x00000080,
	0x00000000,
	0x00000000,
	0x00040404,
	0x00000000,
	0x02010102,
	0x67676767,
	0x00000202,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x0D100F00,
	0x0003020E,
	0x00000001,
	0x01000000,
	0x00020201,
	0x00000000,
	0x00000424,
	0x00000301,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00001401,
	0x00000493,
	0x00000000,
	0x00000424,
	0x00000301,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00001401,
	0x00000493,
	0x00000000,
	0x00000424,
	0x00000301,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00001401,
	0x00000493,
	0x00000000,
	0x00000424,
	0x00000301,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00001401,
	0x00000493,
	0x00000000,
	0x00000424,
	0x00000301,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00001401,
	0x00000493,
	0x00000000,
	0x00000424,
	0x00000301,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00001401,
	0x00000493,
	0x00000000,
};

static uint32_t DDRSS_phyReg[] = {
	0x04C00000,
	0x00000000,
	0x00000200,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000001,
	0x00000000,
	0x00000000,
	0x010101FF,
	0x00010000,
	0x00C00004,
	0x00CC0008,
	0x00660201,
	0x00000000,
	0x00000000,
	0x00000000,
	0x0000AAAA,
	0x00005555,
	0x0000B5B5,
	0x00004A4A,
	0x00005656,
	0x0000A9A9,
	0x0000B7B7,
	0x00004848,
	0x00000000,
	0x00000000,
	0x08000000,
	0x0F000008,
	0x00000F0F,
	0x00E4E400,
	0x00070820,
	0x000C0020,
	0x00062000,
	0x00000000,
	0x55555555,
	0xAAAAAAAA,
	0x55555555,
	0xAAAAAAAA,
	0x00005555,
	0x01000100,
	0x00800180,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000004,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x041F07FF,
	0x00000000,
	0x01CCB001,
	0x2000CCB0,
	0x20000140,
	0x07FF0200,
	0x0000DD01,
	0x10100303,
	0x10101010,
	0x10101010,
	0x00021010,
	0x00100010,
	0x00100010,
	0x00100010,
	0x00100010,
	0x02020010,
	0x51515041,
	0x31804000,
	0x04BF0340,
	0x01008080,
	0x04050001,
	0x00000504,
	0x42100010,
	0x010C053E,
	0x000F0C14,
	0x01000140,
	0x007A0120,
	0x00000C00,
	0x000001CC,
	0x20100200,
	0x00000005,
	0x76543210,
	0x00000008,
	0x02800280,
	0x02800280,
	0x02800280,
	0x02800280,
	0x00000280,
	0x00008000,
	0x00800080,
	0x00800080,
	0x00800080,
	0x00800080,
	0x00800080,
	0x00800080,
	0x00800080,
	0x00800080,
	0x01000080,
	0x01000000,
	0x00000000,
	0x00000000,
	0x00080200,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x04C00000,
	0x00000000,
	0x00000200,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000001,
	0x00000000,
	0x00000000,
	0x010101FF,
	0x00010000,
	0x00C00004,
	0x00CC0008,
	0x00660201,
	0x00000000,
	0x00000000,
	0x00000000,
	0x0000AAAA,
	0x00005555,
	0x0000B5B5,
	0x00004A4A,
	0x00005656,
	0x0000A9A9,
	0x0000B7B7,
	0x00004848,
	0x00000000,
	0x00000000,
	0x08000000,
	0x0F000008,
	0x00000F0F,
	0x00E4E400,
	0x00070820,
	0x000C0020,
	0x00062000,
	0x00000000,
	0x55555555,
	0xAAAAAAAA,
	0x55555555,
	0xAAAAAAAA,
	0x00005555,
	0x01000100,
	0x00800180,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000004,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x041F07FF,
	0x00000000,
	0x01CCB001,
	0x2000CCB0,
	0x20000140,
	0x07FF0200,
	0x0000DD01,
	0x10100303,
	0x10101010,
	0x10101010,
	0x00021010,
	0x00100010,
	0x00100010,
	0x00100010,
	0x00100010,
	0x02020010,
	0x51515041,
	0x31804000,
	0x04BF0340,
	0x01008080,
	0x04050001,
	0x00000504,
	0x42100010,
	0x010C053E,
	0x000F0C14,
	0x01000140,
	0x007A0120,
	0x00000C00,
	0x000001CC,
	0x20100200,
	0x00000005,
	0x76543210,
	0x00000008,
	0x02800280,
	0x02800280,
	0x02800280,
	0x02800280,
	0x00000280,
	0x00008000,
	0x00800080,
	0x00800080,
	0x00800080,
	0x00800080,
	0x00800080,
	0x00800080,
	0x00800080,
	0x00800080,
	0x01000080,
	0x01000000,
	0x00000000,
	0x00000000,
	0x00080200,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000100,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000100,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00DCBA98,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x0A418820,
	0x103F0000,
	0x000F0100,
	0x0000000F,
	0x020002CC,
	0x00030000,
	0x00000300,
	0x00000300,
	0x00000300,
	0x00000300,
	0x00000300,
	0x42080010,
	0x0000003E,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000100,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000100,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00DCBA98,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x16A4A0E6,
	0x103F0000,
	0x000F0000,
	0x0000000F,
	0x020002CC,
	0x00030000,
	0x00000300,
	0x00000300,
	0x00000300,
	0x00000300,
	0x00000300,
	0x42080010,
	0x0000003E,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000100,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000100,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00DCBA98,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x2307B9AC,
	0x10030000,
	0x000F0000,
	0x0000000F,
	0x020002CC,
	0x00030000,
	0x00000300,
	0x00000300,
	0x00000300,
	0x00000300,
	0x00000300,
	0x42080010,
	0x0000003E,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000100,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00050000,
	0x04000100,
	0x00000055,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x01002000,
	0x00004001,
	0x00020028,
	0x00010100,
	0x00000001,
	0x00000000,
	0x0F0F0E06,
	0x00010101,
	0x010F0004,
	0x00000000,
	0x00000000,
	0x00000064,
	0x00000000,
	0x00000000,
	0x01020103,
	0x0F020102,
	0x03030303,
	0x03030303,
	0x00040000,
	0x00005201,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x07070001,
	0x00005400,
	0x000040A2,
	0x00024410,
	0x00004410,
	0x00004410,
	0x00004410,
	0x00004410,
	0x00004410,
	0x00004410,
	0x00004410,
	0x00004410,
	0x00004410,
	0x00000000,
	0x00000046,
	0x00000400,
	0x00000008,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x03000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x04102006,
	0x00041020,
	0x01C98C98,
	0x3F400000,
	0x3F3F1F3F,
	0x0000001F,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000001,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000000,
	0x76543210,
	0x00000098,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00040700,
	0x00000000,
	0x00000000,
	0x00000000,
	0x00000002,
	0x00000100,
	0x00000000,
	0x0001F7C2,
	0x00020002,
	0x00000000,
	0x00001142,
	0x03020400,
	0x00000080,
	0x03900390,
	0x03900390,
	0x03900390,
	0x03900390,
	0x03900390,
	0x03900390,
	0x00000300,
	0x00000300,
	0x00000300,
	0x00000300,
	0x31823FC7,
	0x00000000,
	0x0C000D3F,
	0x30000D3F,
	0x300D3F11,
	0x01990000,
	0x000D3FCC,
	0x00000C11,
	0x300D3F11,
	0x01990000,
	0x300C3F11,
	0x01990000,
	0x300C3F11,
	0x01990000,
	0x300D3F11,
	0x01990000,
	0x300D3F11,
	0x01990000,
	0x20040004,
};

static struct reginitdata ctl_regs = {
	.regs = DDRSS_ctlReg,
	.num = ARRAY_SIZE(DDRSS_ctlReg),
};

static struct reginitdata pi_regs = {
	.regs = DDRSS_phyIndepReg,
	.num = ARRAY_SIZE(DDRSS_phyIndepReg),
};

static struct reginitdata phy_regs = {
	.regs = DDRSS_phyReg,
	.num = ARRAY_SIZE(DDRSS_phyReg),
};

static struct k3_ddr_initdata initdata = {
	.ctl_regs = &ctl_regs,
	.pi_regs = &pi_regs,
	.phy_regs = &phy_regs,
	.freq0 = 25000000,
	.freq1 = DDRSS_PLL_FREQUENCY_1,
	.freq2 = DDRSS_PLL_FREQUENCY_2,
	.fhs_cnt = DDRSS_PLL_FHS_CNT,
};

void am625_sk_ddr_init(void)
{
	k3_ddrss_init(&initdata);
}
